1. Field of the Invention
This invention relates to differential encoding.
2. Description of the Prior Art
Differential encoding processes for encoding data such as Differential Pulse Code Modulation (DPCM) are well known and described for example in M. J. Riley and I. E. G. Richardson, “Digital Video Communications”, Artech House Inc., 1997. Differential encoding processes are often used to encode image data but are applicable to any type of electronic data.
In one form of DPCM, a current pixel may be encoded either as a reference pixel value which is a direct representation of the pixel value, or as a differential pixel value. An image region may be represented by a reference pixel value and a group of one or more difference values. A difference value is determined from the reference pixel value and intermediate difference values, following an order of encoding dependency. Thus, an image region might have, for example, its top-left pixel encoded as a reference pixel value, and subsequent pixels as differential pixel values representing the difference between that pixel and a preceding pixel in an order of encoding dependency such as a raster scan pattern through the region.
DPCM can be improved by averaging the values of a neighbourhood of pixels in proximity to a current pixel. This may be further improved by using a weighting system, the weighting being dependent upon the proximity of a neighbouring pixel to the current pixel. The size of the neighbourhood can also be varied. Adaptive differential coding can also be implemented by modifying the algorithm used to calculate difference values. Such an algorithm can include calculations based on image statistics of a current image region or of a current image made up of image regions. DPCM can be operated in lossless mode as described above or in a lossy mode by quantising the DPCM encoded image regions.
In all of the above arrangements, it is a feature of DCPM that the decoding of difference values requires successful decoding of a reference pixel value and of other difference values. Generally, there is an order of encoding dependency associated with the difference values so that the operation to decode a difference value Δn requires the successful decoding of the reference pixel value and the intervening difference values Δ1→Δn-1. In view of this, to avoid a small data error causing a large loss of decoded data, small image regions are generally encoded, for example an 8H×8V block.
Encoded image data is often stored on a storage medium such as magnetic tape or magnetic, optical or magneto-optical disc for off-line decoding and playback. In order for a user to gain an appreciation of the content of the image data, a useful function of playback devices is a shuttle mode in which the playback device is operable in such a way as to vary the speed and/or direction of playback.
A typical operation of shuttle mode would be to playback the video data at a multiple of the normal playback speed. In the case of a tape-based system, for example, such a shuttle operation may result in only data representing a subset of the image regions being successfully recovered from the tape. This results in lower quality playback in shuttle mode. However, full resolution playback is not strictly required for the user to gain an appreciation of the content of the image data stored on a tape.
Those image regions successfully recovered from the tape in shuttle mode may themselves lack a proportion of pixel representations. In an encoding process where data is represented spatially, those spatial locations lacking pixel representations are presented to an image output upon decoding as omitted pixel values for which no data is present. Thus shuttle mode playback quality is reduced as the proportion of omitted pixel representations in identified image regions increases. Concealment techniques have been proposed, for example, by replacing omitted pixel representations with values approximated from pixel representations in spatial proximity to the omitted pixel representation or with values approximated from those in adjacent images. However, such concealment techniques themselves rely on having other pixels nearby which have been successfully decoded. In particular, temporal concealment processes require pixels at substantially the same spatial position as an unsuccessfully decoded pixel to be present in temporally adjacent images.
In summary, when an image region is encoded according to a differential encoding process such as DPCM, image regions identified on a storage medium may lack a proportion of pixel representations. Since a current difference value is determined from a reference pixel value and intermediate difference values in an order of encoding dependency, an unsuccessfully decoded pixel prevents subsequent differential pixel values from being successfully decoded.